﻿using LiveChartsCore.Defaults;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Text.Json.Serialization;
using System.Threading.Tasks;

namespace UIWindows.Models.Homes
{
    public class ChartDataModel : UIWindows.Domains.ViewModelBase
    {
        #region NG统计
        private int _total_LiquidInjection;
        /// <summary>
        /// 注液
        /// </summary>
        public int Total_LiquidInjection
        {
            get { return _total_LiquidInjection; }
            set { SetProperty(ref _total_LiquidInjection, value); }
        }
        private int _NG_ShortCircuit;
        /// <summary>
        /// 短路 NG
        /// </summary>
        public int NG_ShortCircuit
        {
            get { return _NG_ShortCircuit; }
            set { SetProperty(ref _NG_ShortCircuit, value); }
        }
        private int _ngAfterScanCode;
        /// <summary>
        /// 后扫码NG
        /// </summary>
        public int NG_AfterScanCode
        {
            get { return _ngAfterScanCode; }
            set { SetProperty(ref _ngAfterScanCode, value); }
        }
        private int _ngLeakDetection;
        /// <summary>
        /// 测漏NG
        /// </summary>
        public int NG_LeakDetection
        {
            get { return _ngLeakDetection; }
            set { SetProperty(ref _ngLeakDetection, value); }
        }

        #endregion

        #region 进站
        private int _total_Inbound;
        /// <summary>
        /// 进站总数
        /// </summary>
        public int Total_Inbound
        {
            get { return _total_Inbound; }
            set { SetProperty(ref _total_Inbound, value); }
        }

        private double _scanCodeNG;

        public double NG_ScanCode
        {
            get { return _scanCodeNG; }
            set { SetProperty(ref _scanCodeNG, value); }
        }

        private double _beforeWeighin;
        /// <summary>
        /// 前称重NG
        /// </summary>
        public double NG_BeforeWeighin
        {
            get { return _beforeWeighin; }
            set { SetProperty(ref _beforeWeighin, value); }
        }
        private double _passingRate_Inbound;
        /// <summary>
        /// 进站合格率
        /// </summary>
        public double PassingRateInbound
        {
            get { return _passingRate_Inbound; }
            set { SetProperty(ref _passingRate_Inbound, value); }
        }
        #endregion

        #region 注液统计
        /// <summary>
        /// 多液
        /// </summary>
        [JsonIgnore]
        public ObservableValue OV_MultiLiquid { get; set; }
        private double _multiLiquid;
        /// <summary>
        /// 多液
        /// </summary>
        public double NG_MultiLiquid
        {
            get { return _multiLiquid; }
            set { SetProperty(ref _multiLiquid, value); }
        }

        /// <summary>
        /// 少液
        /// </summary>
        [JsonIgnore]
        public ObservableValue OV_LessLiquid { get; set; }

        private double _lessLiquid;
        /// <summary>
        /// 少液
        /// </summary>
        public double NG_LessLiquid
        {
            get { return _lessLiquid; }
            set { SetProperty(ref _lessLiquid, value); }
        }

        /// <summary>
        /// 注液合格率
        /// </summary>
        [JsonIgnore]
        public ObservableValue OV_LiquidInjection_PassingRate { get; set; }
        private double _liquidInjection_PassingRate;
        /// <summary>
        /// 注液合格率
        /// </summary>
        public double LiquidInjection_PassingRate
        {
            get { return _liquidInjection_PassingRate; }
            set { SetProperty(ref _liquidInjection_PassingRate, value); }
        }

        #endregion

        #region 称重统计
        /// <summary>
        /// 注液NG统计
        /// </summary>
        [JsonIgnore]
        public ObservableValue OV_LiquidInjection { get; set; }
        /// <summary>
        /// 测漏NG统计
        /// </summary>
        [JsonIgnore]
        public ObservableValue OV_LeakDetection { get; set; }
        /// <summary>
        /// 后称重合格率
        /// </summary>
        [JsonIgnore]
        public ObservableValue OV_AfterWeighingPassingRate { get; set; }

        private double _LiquidInjection;
        /// <summary>
        /// 注液NG
        /// </summary>
        public double NG_LiquidInjection
        {
            get { return _LiquidInjection; }
            set { SetProperty(ref _LiquidInjection, value); }
        }

        private double _AfterWeighingPassingRate;
        /// <summary>
        /// 后称重合格率
        /// </summary>
        public double AfterWeighingPassingRate
        {
            get { return _AfterWeighingPassingRate; }
            set { SetProperty(ref _AfterWeighingPassingRate, value); }
        }
        #endregion

        #region 密封胶钉
        private int ng_FrontGlueNail;
        /// <summary>
        /// 前胶钉NG
        /// </summary>
        public int NG_FrontGlueNail
        {
            get { return ng_FrontGlueNail; }
            set { SetProperty(ref ng_FrontGlueNail, value); }
        }
        #endregion


        private int _total_ShortCircuit;
        /// <summary>
        /// 测短路总数
        /// </summary>
        public int Total_ShortCircuit
        {
            get { return _total_ShortCircuit; }
            set { SetProperty(ref _total_ShortCircuit, value); }
        }
        private int _okTotal_ShortCircuit;
        /// <summary>
        /// 测短路OK总数
        /// </summary>
        public int OKTotal_ShortCircuit
        {
            get { return _okTotal_ShortCircuit; }
            set { SetProperty(ref _okTotal_ShortCircuit, value); }
        }
        private int _ngTotal_ShortCircuit;
        /// <summary>
        /// 测短路NG总数
        /// </summary>
        public int NGTotal_ShortCircuit
        {
            get { return _ngTotal_ShortCircuit; }
            set { SetProperty(ref _ngTotal_ShortCircuit, value); }
        }


        private int _total_Altimetry;
        /// <summary>
        /// 测高总数
        /// </summary>
        public int Total_Altimetry
        {
            get { return _total_Altimetry; }
            set { SetProperty(ref _total_Altimetry, value); }
        }
        private int _okTotal_Altimetry;
        /// <summary>
        ///  测高OK总数
        /// </summary>
        public int OKTotal_Altimetry
        {
            get { return _okTotal_Altimetry; }
            set { SetProperty(ref _okTotal_Altimetry, value); }
        }
        private int _ngTotal_Altimetry;
        /// <summary>
        /// 测高NG总数
        /// </summary>
        public int NGTotal_Altimetry
        {
            get { return _ngTotal_Altimetry; }
            set { SetProperty(ref _ngTotal_Altimetry, value); }
        }
        

        private int _total_ccd;
        /// <summary>
        /// 总数
        /// </summary>
        public int Total_CCD
        {
            get { return _total_ccd; }
            set { SetProperty(ref _total_ccd, value); }
        }

        private int _okTotal_CCD;
        /// <summary>
        ///  OK总数
        /// </summary>
        public int OKTotal_CCD
        {
            get { return _okTotal_CCD; }
            set { SetProperty(ref _okTotal_CCD, value); }
        }
        private int _ngTotal_CCD;
        /// <summary>
        /// NG总数
        /// </summary>
        public int NGTotal_CCD
        {
            get { return _ngTotal_CCD; }
            set { SetProperty(ref _ngTotal_CCD, value); }
        }



    }
}
